1. Technical Field
The present invention relates in general to a system and method for automated interaction diagram generation using source code breakpoints. More particularly, the present invention relates to a system and method for using an integrated development environment to set breakpoints in source code, and automatically generate an interaction diagram based upon collected breakpoint data that corresponds to the breakpoints.
2. Description of the Related Art
As the strategic value of software increases for many companies, the industry looks for techniques to automate the production of software and to improve quality, reduce cost, and decrease time-to-market. The industry has developed a Unified Modeling Language (UML) to address these needs.
The UML is a standard language for specifying, visualizing, constructing, and documenting the artifacts of software systems. The UML uses mostly graphical notations to express the design of software projects, and has become an important part of developing object oriented software. Two popular UML interaction diagrams are sequence diagrams and collaboration diagrams. A sequence diagram displays the time sequence of the objects participating in an interaction (e.g., a method call). This consists of a vertical dimension (time) and a horizontal dimension (different objects). A collaboration diagram displays an interaction that is organized around the objects and their links to each another.
A challenge found is that the process of selecting and entering information that is required to generate interaction diagrams is time consuming and may become unwieldy for large projects. Furthermore, data entry errors or updated code paths require a user to delete and reenter the information in order to regenerate the interaction diagram. The tedium of entering and reentering data is a disincentive for developers to utilize diagrammatic representations of execution flow from existing source code or from prototypes.
What is needed, therefore, is a system and method for a user to automatically generate interaction diagrams from source code.